Users are increasingly utilizing electronic devices to obtain various types of information. For example, a user wanting to learn the name of a song playing in the background can cause a sample of that song to be recorded by an electronic device and uploaded to a song identification service for analysis. Likewise, a user wanting an answer to a question can use his voice to ask his device the question, such that the device will process the user's voice and retrieve the answer to the question. In a similar fashion, a user wanting to determine the availability of a book can capture an image of the book and upload that image to a book identification service for analysis. Such approaches have potential downsides, however, as they require an active connection to an appropriate service in order to transfer the information for analysis, as well as to receive the result of the analysis. If no data connection is available, the user might be able to wait until a later time when a connection is available, but cannot obtain results when the user most likely wants those results. Even when a connection is available, the amount of time necessary to upload an image or audio file and obtain the results can be undesirable for many users, particularly when using relatively slow connections such as cellular data connections. Further still, even when a connection is available, the vast amount of information needed to be sifted through in order to obtain the results can require a great deal of time and processing power.